home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / X11 / xkb / symbols / vn < prev    next >
Text File  |  2005-01-13  |  11KB  |  399 lines

  1. // vn,  TCVN 5712:1993
  2. // Le Hong Boi <le.hong.boi@bigfoot.com>
  3. // August 1999
  4. // Further modified by Ashley Clark <aclark@debian.org>
  5. // July 2000 for X 4.0
  6. //
  7. // Symbols definition for a very simple US and VN keyboard layout.
  8. // This is a terrible hack, I use temporarily for myself:
  9. // Instead of using VN char keysyms (which requires hacking X source
  10. // and recompile) it use the latin-1 keysyms at the same code
  11. //
  12. // toggle US and VN keyboard by Shift + Caps_Lock key
  13. //
  14. // --------
  15. // aclark (2000-07-27)
  16. // I've modified this to refer to the correct keysyms in the server
  17. //
  18. // $XFree86: xc/programs/xkbcomp/symbols/vn,v 1.4 2002/11/20 04:49:03 dawes Exp $
  19.  
  20. partial modifier_keys
  21. xkb_symbols "toggle" {
  22.     include "vn(basic)"
  23.     key <CAPS> {    [ Control_L,        ISO_Next_Group] };
  24.     modifier_map Control { <CAPS>, <LCTL> };
  25. };
  26.  
  27.  
  28. //partial hidden alphanumeric_keys modifier_keys 
  29. partial default alphanumeric_keys  
  30. xkb_symbols "basic" {
  31.  
  32.     include "srvr_ctrl(xfree86)"
  33.  
  34.     name[Group1]= "US/ASCII";
  35.     name[Group2]= "Vietnamese";
  36.     
  37.     key <ESC>  {    [ Escape            ]    };
  38.  
  39.     // Alphanumeric section
  40.     key <TLDE> {    [ quoteleft,    asciitilde    ],
  41.             [ quoteleft,    asciitilde    ]    };
  42.     key <AE01> {    [      1,    exclam         ],
  43.             [    abreve,    Abreve        ]    };
  44.     key <AE02> {    [      2,    at        ],
  45.             [ acircumflex,    Acircumflex    ]    };
  46.     key <AE03> {    [      3,    numbersign    ],
  47.             [ ecircumflex,    Ecircumflex    ]    };
  48.     key <AE04> {    [      4,    dollar        ],
  49.             [ ocircumflex,    Ocircumflex    ]    };
  50.     key <AE05> {    [      5,    percent        ],
  51.             [ dead_grave,    percent        ]    };
  52.     key <AE06> {    [      6,    asciicircum    ],    
  53.             [ dead_hook,    asciicircum    ]    };
  54.     key <AE07> {    [      7,    ampersand    ],
  55.             [ dead_tilde,    ampersand    ]    };
  56.     key <AE08> {    [      8,    asterisk    ],
  57.             [ dead_acute,    asterisk    ]    };
  58.     key <AE09> {    [      9,    parenleft    ],
  59.             [ dead_belowdot,parenleft    ]    };
  60.     key <AE10> {    [      0,    parenright    ],
  61.             [   dstroke,    Dstroke        ]    };
  62.     key <AE11> {    [     minus,    underscore    ],
  63.             [     minus,    underscore    ]    };
  64.     key <AE12> {    [     equal,    plus        ],
  65.             [     equal,    plus        ]    };
  66.     key <BKSP> {
  67.     type="CTRL+ALT",
  68.     symbols[Group1]= [ BackSpace,    Terminate_Server ]
  69.     };
  70.  
  71.     key  <TAB> {    [     Tab,    ISO_Left_Tab    ],
  72.             [    Tab,    ISO_Left_Tab    ]    };
  73.     key <AD01> {    [      q,    Q         ],
  74.             [      q,    Q        ]    };
  75.     key <AD02> {    [      w,    W        ],
  76.             [      w,    W        ]    };
  77.     key <AD03> {    [      e,    E        ],
  78.             [      e,    E        ]    };
  79.     key <AD04> {    [      r,    R        ],
  80.             [      r,    R        ]    };
  81.     key <AD05> {    [      t,    T        ],
  82.             [      t,    T        ]    };
  83.     key <AD06> {    [      y,    Y        ],
  84.             [      y,    Y        ]    };
  85.     key <AD07> {    [      u,    U        ],
  86.             [      u,    U        ]    };
  87.     key <AD08> {    [      i,    I        ],
  88.             [      i,    I        ]    };
  89.     key <AD09> {    [      o,    O        ],
  90.             [      o,    O        ]    };
  91.     key <AD10> {    [      p,    P        ],
  92.             [      p,    P        ]    };
  93.     key <AD11> {    [ bracketleft,    braceleft    ],
  94.             [ 0x10001b0,    0x10001af    ]    };
  95.     key <AD12> {    [ bracketright,    braceright    ],
  96.             [ 0x10001a1,    0x10001a0    ]    };
  97.     key <RTRN> {    [ Return            ],
  98.             [ Return            ]    };
  99.  
  100.     key <AC01> {    [      a,    A         ],
  101.             [      a,    A        ]    };
  102.     key <AC02> {    [      s,    S        ],
  103.             [      s,    S        ]    };
  104.     key <AC03> {    [      d,    D        ],
  105.             [      d,    D        ]    };
  106.     key <AC04> {    [      f,    F        ],
  107.             [      f,    F        ]    };
  108.     key <AC05> {    [      g,    G        ],
  109.             [      g,    G        ]    };
  110.     key <AC06> {    [      h,    H        ],
  111.             [      h,    H        ]    };
  112.     key <AC07> {    [      j,    J        ],
  113.             [      j,    J        ]    };
  114.     key <AC08> {    [      k,    K        ],
  115.             [      k,    K        ]    };
  116.     key <AC09> {    [      l,    L        ],
  117.             [      l,    L        ]    };
  118.     key <AC10> {    [ semicolon,    colon        ],
  119.             [ semicolon,    colon        ]    };
  120.     key <AC11> {    [ quoteright,    quotedbl    ],
  121.             [ quoteright,    quotedbl    ]    };
  122.  
  123.     key <LFSH> {    [      Shift_L        ],
  124.             [     Shift_L        ]    };
  125.     key <AB01> {    [      z,    Z         ],
  126.             [      z,    Z        ]    };
  127.     key <AB02> {    [      x,    X        ],
  128.             [      x,    X        ]    };
  129.     key <AB03> {    [      c,    C        ],
  130.             [      c,    C        ]    };
  131.     key <AB04> {    [      v,    V        ],
  132.             [      v,    V        ]    };
  133.     key <AB05> {    [      b,    B        ],
  134.             [      b,    B        ]    };
  135.     key <AB06> {    [      n,    N        ],
  136.             [      n,    N        ]    };
  137.     key <AB07> {    [      m,    M        ],
  138.             [      m,    M        ]    };
  139.     key <AB08> {    [     comma,    less        ],
  140.             [     comma,    less        ]    };
  141.     key <AB09> {    [    period,    greater        ],
  142.             [    period,    greater        ]    };
  143.     key <AB10> {    [     slash,    question    ],
  144.             [     slash,    question    ]    };
  145.     key <BKSL> {    [ backslash,    bar        ],
  146.             [ backslash,    bar        ]    };
  147.  
  148.     key <LCTL> {    [      Control_L        ],
  149.             [     Control_L        ]    };
  150.     key <SPCE> {    [      space            ],
  151.             [     space            ]    };
  152.     // End alphanumeric section
  153.  
  154.     // begin modifier mappings
  155.     modifier_map Shift  { Shift_L };
  156.     modifier_map Lock   { Caps_Lock };
  157.     modifier_map Control{ Control_L };
  158. };
  159.  
  160. // definition of a US/ASCII layout for a typical 101-key keyboard. 
  161. // Includes the basic alphanumeric and punctuation keys and then 
  162. // defines the "extra" (right) modifier keys, function keys, cursor,
  163. // edit, and keypad keys.
  164. xkb_symbols "generic101" {
  165.     include "vn(basic)"
  166.     key <RTSH> {    [     Shift_R        ],
  167.             [    Shift_R        ]    };
  168.     key <LALT> {    [     Alt_L         ],
  169.             [    Alt_L        ]    };
  170.     key <RCTL> {    [     Control_R    ],
  171.             [    Control_R    ]    };
  172.     key <RALT> {    [    Alt_R        ],
  173.             [    Alt_R        ]    };
  174.  
  175.     // Begin "Function" section
  176.     key <FK01> {    [      F1        ],
  177.             [     F1        ]    };
  178.     key <FK02> {    [     F2        ],
  179.             [     F2        ]    };
  180.     key <FK03> {    [     F3        ],
  181.             [     F3        ]    };
  182.     key <FK04> {    [     F4        ],
  183.             [     F4        ]    };
  184.     key <FK05> {    [     F5        ],
  185.             [     F5        ]    };
  186.     key <FK06> {    [     F6        ],
  187.             [     F6        ]    };
  188.     key <FK07> {    [     F7        ],
  189.             [     F7        ]    };
  190.     key <FK08> {    [     F8        ],
  191.             [     F8        ]    };
  192.     key <FK09> {    [        F9        ],
  193.             [     F9        ]    };
  194.     key <FK10> {    [        F10        ],
  195.             [     F10        ]    };
  196.     key <FK11> {    [        F11        ],
  197.             [     F11        ]    };
  198.     key <FK12> {    [      F12        ],
  199.             [     F12        ]    };
  200.     // End "Function" section
  201.  
  202.     // Begin "Editing" section
  203.     key <PRSC> {
  204.     type= "PC_SYSRQ",
  205.     symbols[Group1]= [ Print, Execute ]
  206.     };
  207.     key <SCLK> {  [  Scroll_Lock    ],
  208.           [  Scroll_Lock    ]    };
  209.     key <PAUS> {
  210.     type= "PC_BREAK",
  211.     symbols[Group1]= [ Pause, Break ]
  212.     };
  213.     key  <INS> {  [  Insert        ],
  214.           [  Insert        ]    };
  215.     key <HOME> {    [  Home            ],
  216.             [  Home            ]    };
  217.     key <PGUP> {    [  Prior        ],
  218.             [  Prior        ]    };
  219.     key <DELE> {     [  Delete        ],
  220.             [  Delete        ]    };
  221.     key  <END> {    [  End            ],
  222.             [  End            ]    };
  223.     key <PGDN> {    [  Next            ],
  224.             [  Next            ]    };
  225.  
  226.     key   <UP> {    [  Up            ],
  227.             [  Up            ]    };
  228.     key <LEFT> {    [  Left            ],
  229.             [  Left            ]    };
  230.     key <DOWN> {    [  Down            ],
  231.             [  Down            ]    };
  232.     key <RGHT> {    [  Right        ],
  233.             [  Right        ]    };
  234.  
  235.     // End "Editing" section, begin "Keypad"
  236.     key <NMLK> {    [  Num_Lock, Pointer_EnableKeys    ],
  237.             [  Num_Lock, Pointer_EnableKeys    ]    };
  238.     key <KPDV> {    [  KP_Divide        ],
  239.             [  KP_Divide        ]    };
  240.     key <KPMU> {    [  KP_Multiply        ],
  241.             [  KP_Multiply        ]    };
  242.     key <KPSU> {    [  KP_Subtract        ],
  243.             [  KP_Subtract        ]    };
  244.  
  245.     key  <KP7> {    [  KP_Home,    KP_7    ],
  246.             [  KP_Home,    KP_7    ]    };
  247.     key  <KP8> {    [  KP_Up,    KP_8    ],
  248.             [  KP_Up,    KP_8    ]    };
  249.     key  <KP9> {    [  KP_Prior,    KP_9    ],
  250.             [  KP_Prior,    KP_9    ]    };
  251.     key <KPAD> {    [      KP_Add        ],
  252.             [    KP_Add        ]    };
  253.  
  254.     key  <KP4> {    [  KP_Left,    KP_4    ],
  255.             [  KP_Left,    KP_4    ]    };
  256.     key  <KP5> {    [  KP_Begin,    KP_5    ],
  257.             [  KP_Begin,    KP_5    ]    };
  258.     key  <KP6> {    [  KP_Right,    KP_6    ],
  259.             [  KP_Right,    KP_6    ]    };
  260.  
  261.     key  <KP1> {    [  KP_End,    KP_1    ],
  262.             [  KP_End,    KP_1    ]    };
  263.     key  <KP2> {    [  KP_Down,    KP_2    ],
  264.             [  KP_Down,    KP_2    ]    };
  265.     key  <KP3> {    [  KP_Next,    KP_3    ],
  266.             [  KP_Next,    KP_3    ]    };
  267.     key <KPEN> {    [      KP_Enter    ],
  268.             [    KP_Enter    ]    };
  269.  
  270.     key  <KP0> {    [  KP_Insert,    KP_0    ],
  271.             [  KP_Insert,    KP_0    ]    };
  272.     key <KPDL> {      [  KP_Delete,    KP_Decimal ],
  273.             [  KP_Delete,    KP_Decimal ]    };
  274.     // End "Keypad" section
  275.  
  276.  
  277.     // begin modifier mappings
  278.     modifier_map Shift  { Shift_R };
  279.     modifier_map Control{ Control_R };
  280.     modifier_map Mod1   { Alt_L, Alt_R };
  281.     modifier_map Mod2   { Num_Lock };
  282.     modifier_map Mod5   { Scroll_Lock };
  283. };
  284.  
  285. // definition for the PC-AT type 101 key keyboard
  286. //default 
  287. xkb_symbols "pc101" {
  288.     include "vn(generic101)"
  289.     key <LALT> {    [     Alt_L,    Meta_L         ],
  290.             [    Alt_L,    Meta_L        ]    };
  291.     key <RALT> {    [    Alt_R,    Meta_R        ],
  292.             [    Alt_R,    Meta_R        ]    };
  293.  
  294.     // begin modifier mappings
  295.     modifier_map Mod1   { Alt_L, Alt_R, Meta_L, Meta_R };
  296. };
  297.  
  298. // definition for the extra key on 102-key keyboards
  299. xkb_symbols "pc102" {
  300.     include "vn(pc101)"
  301.     key <LSGT> {    [      less,    greater        ],
  302.             [      less,    greater        ]    };
  303. };
  304.  
  305. // definition of Euro-style, Alt_R == [Mode_switch, Multi_key]
  306. xkb_symbols "pc101euro" {
  307.     include "vn(generic101)"
  308.     key <LALT> {    [     Alt_L,    Meta_L         ],
  309.             [    Alt_L,    Meta_L        ]    };
  310.     key <RALT> {    [ Mode_switch,    Multi_key    ],
  311.             [ Mode_switch,    Multi_key    ]    };
  312.  
  313.     // begin modifier mappings
  314.     modifier_map Mod1   { Alt_L, Meta_L };
  315. };
  316.  
  317. // definition of Alternate Euro-style, Alt_R == [Multi_key]
  318. xkb_symbols "pc101compose" {
  319.     include "vn(generic101)"
  320.     key <LALT> {    [     Alt_L,    Meta_L         ],
  321.             [    Alt_L,    Meta_L        ]    };
  322.     key <RALT> {    [     Multi_key        ],
  323.             [    Multi_key        ]    };
  324.  
  325.     // begin modifier mappings
  326.     modifier_map Mod1   { Alt_L, Meta_L };
  327. };
  328.  
  329. xkb_symbols "pc102euro" {
  330.     include "us(pc101euro)"
  331.     key <LSGT> {    [      less,    greater        ]    };
  332. };
  333.  
  334. xkb_symbols "pc102compose" {
  335.     include "us(pc101compose)"
  336.     key <LSGT> {    [      less,    greater        ]    };
  337. };
  338.  
  339. // definition for the extra keys on 104-key "Windows95" keyboards
  340. xkb_symbols "pc104" {
  341.     include "vn(generic101)"
  342.     key <LALT> {    [     Alt_L        ],
  343.             [    Alt_L        ]    };
  344.     key <RALT> {    [    Alt_R        ],
  345.             [    Alt_R        ]    };
  346.     key <LWIN> {    [    Meta_L        ],
  347.             [    Meta_L        ]    };
  348.     key <RWIN> {    [    Meta_R        ],
  349.             [    Meta_R        ]    };
  350.     key <MENU> {    [    Menu        ],
  351.             [    Menu        ]    };
  352.  
  353.     // modifier mappings
  354.     modifier_map Mod1   { Alt_L, Alt_R };
  355.     modifier_map Mod4   { Meta_L, Meta_R };
  356. };
  357.  
  358. // definition of Euro-style, Right "logo" key == [Mode_switch, Multi_key]
  359. xkb_symbols "pc104euro" {
  360.     include "vn(pc104)"
  361.     key <RWIN> {    [    Mode_switch, Multi_key    ],
  362.             [    Mode_switch, Multi_key    ]    };
  363. };
  364.  
  365. // put the compose key on the right "logo" key
  366. xkb_symbols "pc104compose" {
  367.     include "vn(pc104)"
  368.     key <RWIN> {    [    Multi_key    ],
  369.             [    Multi_key    ]    };
  370. };
  371.  
  372. // defintion which includes both the Windows95 keyboards _and_
  373. // the extra key on most European keyboards.
  374. xkb_symbols "pc105" {
  375.     include "us(pc104)"
  376.     key <LSGT> {    [      less,    greater        ]    };
  377. };
  378. xkb_symbols "pc105euro" {
  379.     include "us(pc104euro)"
  380.     key <LSGT> {    [      less,    greater        ]    };
  381. };
  382. xkb_symbols "pc105compose" {
  383.     include "us(pc104compose)"
  384.     key <LSGT> {    [      less,    greater        ]    };
  385. };
  386. // universam maps are identical to pc105; wish we had aliases for map names.
  387. xkb_symbols "pc_universal" {
  388.     include "us(pc104)"
  389.     key <LSGT> {    [      less,    greater        ]    };
  390. };
  391. xkb_symbols "pc105euro" {
  392.     include "us(pc104euro)"
  393.     key <LSGT> {    [      less,    greater        ]    };
  394. };
  395. xkb_symbols "pc105compose" {
  396.     include "us(pc104compose)"
  397.     key <LSGT> {    [      less,    greater        ]    };
  398. };
  399.